/*
	Copyright (C) 2010 Salil Bhagurkar

	This file is part of k3

	k3 is free software: you can redistribute it and/or modify
	it under the terms of the GNU Lesser General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	k3 is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU Lesser General Public License for more details.

	You should have received a copy of the GNU Lesser General Public License
	along with k3.  If not, see <http://www.gnu.org/licenses/>.
*/

/*Currently this code is a substitute for displaying on the screen until a real screen driver is ported*/

#include <shared.h>

/*Timestamp counter*/

static inline void read_time_stamp( u32 *low, u32 *high ) {
    asm volatile( "rdtsc" : "=a" ( *low ), "=d" ( *high ) );
}

static u32 d=0;
void tsc()
{
	u32 l,h;
	read_time_stamp(&l,&h);
	printk("The timestamp = ( %x %x ) Delta = %x\n",l,h,l-d);
	d = l;
}

